package ${techspec.packageName}.service;

import javax.inject.Inject;
import java.util.List;

import ${techspec.packageName}.dao.*;
import ${techspec.packageName}.entity.*;

import java.io.Serializable;
import javax.inject.Named;
import javax.enterprise.context.ApplicationScoped;

#foreach ($import in $service.imports)
import ${import};
#end
//${service.classComment}
// ${service.classAnnotation}

@ApplicationScoped
public class ${service.className} implements Serializable{
    @Inject
    protected ${entity.name}Dao ${entity.id}Dao;
    
#foreach ($field in $service.fields)
	${field.formattedComment}	
	${field.annotation}
	private ${field.type} ${field.name};
#end


#foreach($method in $service.methods)
	${method.visibility} ${method.returnType} ${method.name}(${method.argsAsString}){
#foreach($line in $method.lines)
		${line}
#end
	}
#end

#foreach ($outputList in $entity.referringOutputLists)
    public List<$entity.name> list${outputList.name}() {
        List<${entity.name}> list = ${entity.id}Dao.list${outputList.name}();
        return list;
    }
#end
	private static final long serialVersionUID = 1L;
}